CC=g++

traductor: parser.tab.o lex.yy.o tabla.o nodo.o
	$(CC) -o $@ $^

lex.yy.c: lexico.l parser.tab.h
	flex $<

parser.tab.h parser.tab.c: parser.y
	bison -dv $<

nodo.o: nodo.h parser.tab.h

lex.yy.o: nodo.h parser.tab.h

test: traductor
	@for i in Ejemplos/*.c; do echo "Probando $$i" && ./traductor < "$$i" > "$${i%.c}.s" && gcc -gstabs "$${i%.c}.s" -o "$${i%.c}"; done;

clean:
	$(RM) *~ *.o core lex.yy.c parser.tab.c parser.output
